home *** CD-ROM | disk | FTP | other *** search
-
-
-
- TECHNICAL
-
-
- A64 AND MULTITASKING
-
- A64 is fully multitasking compatible. A64 should work just fine
- with any program that follows the rules of multitasking
- programming on the Amiga. The only programs that A64 may not
- work with are programs that take over some part of, or all of,
- your Amiga, like some games and some other emulators. Which
- brings us to our next point. A64 can not multitask itself. Even
- though A64 is capable of multitasking it still takes over system
- resources that can not be shared with other programs, so one copy
- of A64 can not share these resources with another copy of A64
- (See A64'S THREE MODES OF OPERATION in the SYSTEM MENU section).
-
-
- A64 AND MEMORY
-
- A64 is a very memory hungry program and in its full capacity it
- can easily use over 500k of your Amiga's memory. We recommend
- having a minimum of 1mb of RAM to use A64.
-
- Different memory configurations can make a dramatic difference in
- the speed of A64. The worst case is running A64 on a A500 or
- A2000 with 1mb RAM and the best case is running A64 on a 68030
- based system with 32 bit RAM. On a 68030 based system speeds of
- over 200% have been reached with some programs. We recommend at
- least 1mb of RAM no matter how your Amiga is configured and this
- statement can be elaborated. If you are running A64 on an Amiga
- 1000 we recommend at least 1mb of RAM. If you are running A64 on
- an A500 or A2000 we recommend at least 1.5mb. The reason for
- this difference is not because A64 will not run on A500s or
- A2000s with only 1mb, it's because A64 will run faster if these
- machines have more than 1mb. This is because A500's and A2000's
- with only 1mb do not have what is called FAST RAM. This is RAM
- that can not be used by graphics and as a result programs run
- faster when using it. We also recommend running the program
- "FastMemFirst," found in the System drawer of the V1.3 WorkBench,
- before running A64. This program will force A64 (and other
- programs) to use this FASTer memory first.
-
-
- 680x0 SUPPORT
-
- All of the programs in The A64 Package will work with any 680x0
- microprocessor. They have been tested with the 68000, 68010,
- 68020 and 68030 microprocessors.
-
-
-
-
-
-
- 6-1
-
-
-
-
-
-
-
-
-
- A64 AND THE A3000
-
- A64 V2.0 will run on the A3000, but because of the speed of the
- A3000, communications with C64 devices using our interface will
- not work. This problem also exists with all of The A64 Packages
- utilities that use our hardware interface. We are working on
- correcting this problem and hopefully it will be fixed for a
- future release. Please note that this problem does not exist
- with other Amiga models using 68030 boards, this problem is
- specific to the A3000.
-
-
- ROMS
-
- WHAT IS ROM
-
- ROM is short for "READ ONLY MEMORY." A ROM is a computer chip
- that is capable of storing a program and like its name implies,
- it is READ ONLY, which means you can not change the program it
- contains. ROM unlike RAM (your computer's memory) does not loose
- its contents when your computer is turned off. Computers usually
- come with ROM to tell it what to do when it's turned on. Your
- Amiga uses a ROM called "KickStart."
-
- THE C64'S ROMS
-
- The C64 has two ROMs that contain its operating system. One ROM
- holds the C64's BASIC and the other ROM holds the C64's KERNAL.
- A64 does not come with the C64's BASIC or KERNAL, because they
- are copyrighted. Before you start worrying that A64 will not
- work without them, this is NOT the case. A64 contains a very
- complex C64 ROM emulation which allows A64 to run most C64
- programs, without the C64's ROMs.
-
- A64'S ROMS
-
- NOTE: This section of the manual gets a little technical by
- discussing machine language. If you are not familiar with
- machine language you should still read this section and and
- try to follow it as best you can, it contains some very
- important information about A64.
-
- As mentioned above, A64 comes with a very complex C64 ROM
- emulation, this ROM emulation will handle the majority of C64
- programs, but not all of them. To explain what A64's ROM
- emulation will and will not handle we need to discuss machine
- language.
-
- The C64's ROMs contain machine language programs. Machine
- language programs are made up of opcodes. Opcodes are machine
- language instructions that tell the computer to perform some tiny
-
-
- 6-2
-
-
-
-
-
-
-
-
-
- operation, like move a value from one place to another or perform
- some kind of operation to a value. It takes many, many opcodes
- to perform even the simplest operations on your computer. The
- C64's ROMs contain many thousands of these opcodes. The C64's
- ROMs are located in the C64's memory map at 40960-49151 (BASIC)
- and 57344-65535 (KERNAL), these numbers are called addresses. To
- access the C64's ROMs and the opcodes they contain you need to
- JUMP to one of these addresses. With BASIC this done with the
- command "SYS."
-
- For example, to reset the C64 (or A64), you can type the
- following:
-
- SYS 64738 [RETURN]
-
- This will cause the C64 (or A64) to enter the KERNAL ROM at
- address 64738 and start executing machine language opcodes
- starting at that address.
-
- If you were to disassemble (a disassembler is a program that
- turns machine language into a readable form) one of the C64's
- ROMs, you would get a listing similar to this:
-
- 40960 LDX #10
- 40962 LDA #138
- 40964 STA 1024
- 40967 ...
-
- NOTE: This listing is only used as an example and is not part of
- the C64's ROMs.
-
- The listing shows ROM addresses followed by the opcode stored at
- each address. Please note that the addresses are not perfectly
- consecutive, this is because different opcodes have different
- lengths. If A64 was to JUMP into the ROMs, using the above
- example, it would handle JUMPING in at all of the shown
- addresses: 40960, 40962, 40964 and 40967. The problem occurs if
- A64 tried to JUMP in at one of the addresses not shown, the
- addresses between opcodes. Because of the way machine language
- is, it is possible for an opcode to have another opcode contained
- within it. For example, if you disassembled the same code as
- above, but started at address 40963, you would get a listing like
- this:
-
- 40963 TXA
- 40964 STA 1024
- 40967 ...
-
- The opcode "TXA" at address 40963 is contained within the opcode
- "LDA #138" at address 40962. This is what A64 will not handle,
- when emulating the C64's ROMs, the JUMPING into the ROMs between
-
-
- 6-3
-
-
-
-
-
-
-
-
-
- opcodes. If you are running a program that tries to JUMP into
- the C64's ROMs between opcodes A64 will trap it and display an
- error requester telling you "PROGRAM EXECUTING DATA ROMS." This
- problem is only apparent when JUMPING into the C64's ROMs between
- opcodes and is not a problem when running C64 programs that use
- the same technique to JUMP within themselves. This problem can
- be corrected by installing the C64's ROMs into A64.
-
- INSTALLING THE C64 ROMS
-
- NOTE: If you have an original copy of GO-64! V2.0 you can install
- the C64 ROMs directly from the GO-64! disk. See the
- GrabGO64ROMs utility in the UTILITIES section.
-
- Installing the C64's ROMs into A64, basically involves saving the
- contents of the C64's ROMs (this must be done on a C64) to a C64
- disk and then copying them to your A64 disk. Installing the
- C64's ROMs into A64 is not difficult, but it does require a few
- small steps to accomplish. Once the C64's ROMs are installed you
- never have to worry about them again. A64 will automatically
- load the C64's ROMs and use them whenever the above mentioned
- problem occurs.
-
- To install the C64 ROMs you need the following:
-
- A C64
- A C64 disk drive (i.e., 1541)
- A64's hardware interface
- A 5 1/4" disk, formatted on a C64, with at least 20k free
-
- NOTE: You can format the C64 disk with the utility 64Cmd from
- 64Tools.
-
- and the following programs that are included with The A64
- Package:
-
- SaveROMs
- 64Tools
-
- The following procedure outlines the installation of the C64
- ROMs. Part of it has to be done on a C64 and the rest must be
- done on the Amiga. This example assumes you are using an A64
- WorkBench disk as described in the GETTING STARTED section.
-
- The first thing you need to do is copy the C64 program "saveroms"
- from the A64 disk to a C64 disk. This program is used to save
- the Commodore 64's ROMs to a C64 disk.
-
- 1. Install A64's hardware interface and connect a C64 disk
- drive to it (See INSTALLING A64'S HARDWARE INTERFACE in
- the GETTING STARTED section).
-
-
- 6-4
-
-
-
-
-
-
-
-
-
- 2. Run the 64Tools program found in the A64Utilities drawer
- on your A64 WorkBench.
- 3. Select the AmigaTo64 gadget. A requester will open asking
- you enter the source filename and destination filename.
-
- For the source filename type "A64:64Prgs/saveroms." Note
- that saveroms is in all lowercase characters. You do not
- need to enter a destination name, the name "saveroms" will
- be used for the destination name. After you are done
- entering the name select the OK gadget. The C64 program
- "saveroms" will then be copied to the C64 disk.
-
- Now that the C64 program "saveroms" is on the C64 disk you need
- to load and run it on a C64:
-
- 1. Either unplug the C64 disk drive from the interface or use
- another C64 disk drive and connect it to a C64.
- 2. With the C64 disk containing the program "saveroms" in the
- C64 disk drive type the following on the C64:
-
- LOAD "SAVEROMS",8 [RETURN]
-
- 3. After the program is done loading type:
-
- RUN [RETURN]
-
- 4. You will then be prompted to insert a disk into drive 8
- and press any key when ready.
- 5. After pressing any key the C64 ROMs will be saved to the
- C64 disk.
-
- Now that the C64's ROMs are saved to a C64 disk you need to
- transfer them to your disk containing A64.
-
- 1. If you need to reconnect the C64 disk drive to your Amiga
- with A64's hardware interface, do so.
- 2. Now select the New Disk gadget in 64Tools.
- 3. The directory of the 64 disk will then be read.
- 4. Select the Exclude All gadget to unselect all the files.
- 5. Select the programs "basic.rom" and "kernal.rom" by
- clicking the left mouse button on their names.
- 6. At the bottom of the 64Tools window is the Destination
- gadget. Select this gadget and enter the following:
- 64:TheA64Package.
- 7. When you are done select the START gadget to copy the
- ROMs.
- 8. After the ROMs are copied you need to run the program
- StripLoadAddr on them. Select the StripLoadAddr gadget.
- A requester will appear asking you to enter the filename.
- For the first ROM enter: "64:TheA64Package/BASIC.rom."
- And select the OK gadget. When StripLoadAddr is done,
-
-
- 6-5
-
-
-
-
-
-
-
-
-
- repeat the procedure for the second ROM. Enter:
- "64:TheA64Package/KERNAL.rom" and then select the OK
- gadget.
-
- The C64's ROMs are now installed. A64 will automatically load and
- use them when needed.
-
- NOTES: Once you have installed the C64 ROMs you will be able to
- disable A64 ROM emulation at will with the A64 ROMs menu
- option in A64 Prefs. Disabling A64's ROM emulation will
- free about 180k of RAM, but will result in some programs
- running slower.
-
- It is highly recommended that you install the C64's ROMs
- if you have access to a C64. We have come across a few
- programs that won't run without the ROMs installed for
- reasons other than the in-between opcode problem described
- above. You have to expect the lack of ROMs in the C64
- memory map to create problems with some C64 programs. The
- C64's ROMs take up about 20% of the C64's total memory
- map, that's a big chunk of missing information.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 6-6
-
-
-
-
-
-